.container {
    position: relative;
    width: 100vw;
    height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
}

.box {
    position: relative;
    width: 1200px;      /* box的width和height不小于content */
    height: 600px;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: 0.5s;
    z-index: 1;
}

/* 背板 */
.box::before {
    content: ' ';
    position: absolute;
    top: 0;
    left: 180px;
    width: 70%;
    height: 100%;
    text-decoration: none;
    background: #fff;
    border-radius: 8px;
    transform: skewX(15deg);
    transition: 0.5s;
}

/* 背板阴影 */
.box::after {
    content: '';
    position: absolute;
    top: 0;
    left: 180px;
    width: 70%;
    height: 100%;
    background: #fff;
    border-radius: 8px;
    transform: skewX(15deg);
    transition: 0.5s;
    filter: blur(30px);
}

/* 鼠标悬停时，发生位移 | :hover表示鼠标悬停 */
.box:hover:before,
.box:hover:after {
    transform: skewX(0deg) scaleX(1.3);
}

.box:before,
.box:after {
    background: linear-gradient(315deg, rgb(0, 255, 207), #0081ff);
    /*background: linear-gradient(315deg, rgb(255, 67, 0), #02ffff);*/
}

.box .content {
    position: relative;
    width: 1200px;
    height: 508px;
    padding: 20px 40px;
    background: rgba(66, 66, 66, 0.15);
    backdrop-filter: blur(10px);
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1);
    border-radius: 8px;
    z-index: 1;
    transition: transform 0.5s;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
}

.box .content h1 {
    font-size: 40px;
    color: #fff;
    position: absolute;
    top: 0;
    left: 65px;
}

.box .content label {
    font-size: 20px;
    color: #ffffff;
    position: absolute;
    top: 100px;
    left: 20px;
}


/* 展示框 */
.display {
    margin: 0;
    height: auto;
    background: transparent;
    padding: 0;
    border: none;
    cursor: pointer;
    --border-right: 6px;
    --text-stroke-color: rgba(255,255,255,0.6);
    --animation-color: #ff2f00;
    --fs-size: 2em;
    letter-spacing: 3px;
    text-decoration: none;
    font-size: var(--fs-size);
    font-family: "Arial", serif;
    position: relative;
    text-transform: uppercase;
    color: transparent;
    -webkit-text-stroke: 1px var(--text-stroke-color);
}

/* 这是当你悬停在display上时的文字样式 */
.hover-text {
    position: absolute;
    box-sizing: border-box;
    content: attr(data-text);
    color: var(--animation-color);
    width: 0%;
    inset: 0;
    border-right: var(--border-right) solid var(--animation-color);
    overflow: hidden;
    transition: 0.5s;
    -webkit-text-stroke: 1px var(--animation-color);
}

/* 悬停效果 */
.display:hover .hover-text {
    width: 100%;
    filter: drop-shadow(0 0 23px var(--animation-color));
}

/* 输入框 */
.input {
    color: #fff;
    font-size: 0.9rem;
    background-color: transparent;
    width: 100%;
    box-sizing: border-box;
    padding-inline: 0.5em;
    padding-block: 0.7em;
    border: none;
    border-bottom: var() solid var();   /* var()类似于auto */
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.input-border {
    position: absolute;
    background: var();
    width: 0;
    height: 2px;
    bottom: 0;
    left: 0;
    transition: width 0.3s cubic-bezier(0.6, -0.28, 0.735, 0.045);
}

.input:focus {
    outline: none;
}

.input:focus + .input-border {
    width: 100%;
}

.form-control {
    position: absolute;
    --width-of-input: 300px;
    top: 120px;
    left: 85px;
}

.input-alt {
    font-size: 1.2rem;
    padding-inline: 1em;
    padding-block: 0.8em;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

.input-border-alt {
    height: 3px;
    background: linear-gradient(90deg, #008cff 0%, #04ffff 50%, #c6ffff 100%);
    transition: width 0.4s cubic-bezier(0.42, 0, 0.58, 1.00);
}

.input-alt:focus + .input-border-alt {
    width: 100%;
}

/* 按钮 */
button {
    position: relative;
    padding: 10px 20px;
    border-radius: 7px;
    border: 3px solid rgb(61, 106, 255);
    font-size: 45px;
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: 2px;
    background: transparent;
    color: #fff;
    overflow: hidden;
    box-shadow: 0 0 0 0 transparent;
    -webkit-transition: all 0.2s ease-in;
    -moz-transition: all 0.2s ease-in;
    transition: all 0.2s ease-in;
}

button:hover {
    background: linear-gradient(-315deg, rgb(0, 255, 207), #0081ff);
    box-shadow: 0 0 30px 5px rgba(0, 142, 236, 0.815);
    -webkit-transition: all 0.2s ease-out;
    -moz-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;
}

button:hover::before {
    -webkit-animation: sh02 0.5s 0s linear;
    -moz-animation: sh02 0.5s 0s linear;
    animation: sh02 0.5s 0s linear;
}

button::before {
    content: '';
    display: block;
    width: 0px;
    height: 86%;
    position: absolute;
    top: 7%;
    left: 0%;
    opacity: 0;
    background: #fff;
    box-shadow: 0 0 50px 30px #fff;
    -webkit-transform: skewX(-20deg);
    -moz-transform: skewX(-20deg);
    -ms-transform: skewX(-20deg);
    -o-transform: skewX(-20deg);
    transform: skewX(-20deg);
}

@keyframes sh02 {
    from {
        opacity: 0;
        left: 0%;
    }

    50% {
        opacity: 1;
    }

    to {
        opacity: 0;
        left: 100%;
    }
}

button:active {
    box-shadow: 0 0 0 0 transparent;
    -webkit-transition: box-shadow 0.2s ease-in;
    -moz-transition: box-shadow 0.2s ease-in;
    transition: box-shadow 0.2s ease-in;
}
